Problem: implies(not(x),y) -> or(x,y) implies(not(x),or(y,z)) -> implies(y,or(x,z)) implies(x,or(y,z)) -> or(y,implies(x,z)) Proof: Complexity Transformation Processor: strict: implies(not(x),y) -> or(x,y) implies(not(x),or(y,z)) -> implies(y,or(x,z)) implies(x,or(y,z)) -> or(y,implies(x,z)) weak: Matrix Interpretation Processor: dimension: 1 max_matrix: 1 interpretation: [or](x0, x1) = x0 + x1 + 4, [implies](x0, x1) = x0 + x1 + 78, [not](x0) = x0 + 128 orientation: implies(not(x),y) = x + y + 206 >= x + y + 4 = or(x,y) implies(not(x),or(y,z)) = x + y + z + 210 >= x + y + z + 82 = implies(y,or(x,z)) implies(x,or(y,z)) = x + y + z + 82 >= x + y + z + 82 = or(y,implies(x,z)) problem: strict: implies(x,or(y,z)) -> or(y,implies(x,z)) weak: implies(not(x),y) -> or(x,y) implies(not(x),or(y,z)) -> implies(y,or(x,z)) Matrix Interpretation Processor: dimension: 4 max_matrix: [1 1 1 1] [0 1 1 1] [0 0 0 0] [0 0 0 0] interpretation: [1 1 1 0] [1 0 0 0] [0] [0 1 1 0] [0 1 1 0] [0] [or](x0, x1) = [0 0 0 0]x0 + [0 0 0 0]x1 + [1] [0 0 0 0] [0 0 0 0] [0], [1 1 0 0] [1 1 1 0] [0] [0 1 1 0] [0 1 1 0] [0] [implies](x0, x1) = [0 0 0 0]x0 + [0 0 0 0]x1 + [1] [0 0 0 0] [0 0 0 0] [0], [1 1 1 1] [1] [0 1 1 1] [1] [not](x0) = [0 0 0 0]x0 + [1] [0 0 0 0] [0] orientation: [1 1 0 0] [1 2 2 0] [1 1 1 0] [1] [1 1 0 0] [1 1 1 0] [1 1 1 0] [0] [0 1 1 0] [0 1 1 0] [0 1 1 0] [1] [0 1 1 0] [0 1 1 0] [0 1 1 0] [1] implies(x,or(y,z)) = [0 0 0 0]x + [0 0 0 0]y + [0 0 0 0]z + [1] >= [0 0 0 0]x + [0 0 0 0]y + [0 0 0 0]z + [1] = or(y,implies(x,z)) [0 0 0 0] [0 0 0 0] [0 0 0 0] [0] [0 0 0 0] [0 0 0 0] [0 0 0 0] [0] [1 2 2 2] [1 1 1 0] [2] [1 1 1 0] [1 0 0 0] [0] [0 1 1 1] [0 1 1 0] [2] [0 1 1 0] [0 1 1 0] [0] implies(not(x),y) = [0 0 0 0]x + [0 0 0 0]y + [1] >= [0 0 0 0]x + [0 0 0 0]y + [1] = or(x,y) [0 0 0 0] [0 0 0 0] [0] [0 0 0 0] [0 0 0 0] [0] [1 2 2 2] [1 2 2 0] [1 1 1 0] [3] [1 2 2 0] [1 1 0 0] [1 1 1 0] [1] [0 1 1 1] [0 1 1 0] [0 1 1 0] [3] [0 1 1 0] [0 1 1 0] [0 1 1 0] [1] implies(not(x),or(y,z)) = [0 0 0 0]x + [0 0 0 0]y + [0 0 0 0]z + [1] >= [0 0 0 0]x + [0 0 0 0]y + [0 0 0 0]z + [1] = implies(y,or(x,z)) [0 0 0 0] [0 0 0 0] [0 0 0 0] [0] [0 0 0 0] [0 0 0 0] [0 0 0 0] [0] problem: strict: weak: implies(x,or(y,z)) -> or(y,implies(x,z)) implies(not(x),y) -> or(x,y) implies(not(x),or(y,z)) -> implies(y,or(x,z)) Qed